package br.com.leopard.erp.gym.filtragem.core;

import javax.faces.component.UIComponent;
import javax.faces.component.html.HtmlOutputText;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.model.SelectItem;

import org.primefaces.component.panel.Panel;
import org.primefaces.component.selectonemenu.SelectOneMenu;

import br.com.leopard.erp.gym.filtragem.core.enumeration.TipoFiltragemString;

public class ComponenteFiltravelString implements ComponenteFiltravel {

	@Override
	public UIComponent montarComponente() {
		Panel painelFiltragem = new Panel();
		painelFiltragem.setHeader("testes");
		;

		HtmlPanelGrid grid = new HtmlPanelGrid();
		grid.setColumns(2);

		HtmlPanelGrid gridInternaFormatiFiltragem = new HtmlPanelGrid();
		grid.setColumns(1);

		gridInternaFormatiFiltragem.getChildren().add(getLabelTipoFiltragem());
		gridInternaFormatiFiltragem.getChildren().add(getComboTipoFiltragem());

		grid.getChildren().add(gridInternaFormatiFiltragem);

		painelFiltragem.getChildren().add(grid);

		return painelFiltragem;
	}

	private UIComponent getLabelTipoFiltragem() {
		HtmlOutputText label = new HtmlOutputText();
		label.setValue("Tipo de Filtragem");

		return label;
	}

	private UIComponent getComboTipoFiltragem() {
		SelectOneMenu comboTipoFiltragem = new SelectOneMenu();
		comboTipoFiltragem.setValue("Tipo de Filtragem");

		TipoFiltragemString[] tipoFiltragem = TipoFiltragemString.values();

		for (int i = 0; i < tipoFiltragem.length; i++) {
			SelectItem item = new SelectItem();
			item.setLabel(tipoFiltragem[i].getLabel());
			item.setValue(tipoFiltragem[i].getIdTipoFiltragem());
		}

		return comboTipoFiltragem;
	}

	@Override
	public void validarComponente() {
		// TODO Auto-generated method stub

	}

	@Override
	public String montarJPQLComponente() {
		// TODO Auto-generated method stub
		return null;
	}

}
